1. Field of the Invention
The present invention relates to a positional control device which controls a position of an object in accordance with a command from a superordinate device, and more particularly to control of a controlled object during initiation of movement.
2. Description of the Related Art
FIG. 5 is a block diagram showing one example of a conventional full closed positional control device (hereinafter referred to simply as a positional control device). The positional control device controls the position of an object system 112 comprising a movable member, such as a table, connected via a coupling with a servo motor (not shown) serving as the drive motor for enabling movement. The configuration and operation of the positional control device are explained as follows. The positional control device receives input of a positional command value Xo from a superordinate device (not shown). A velocity adjustment processor 100 executes velocity adjustment processing for reducing the rate of change over time of the positional command value Xo such that tracking of the actual position of the controlled object becomes possible, and outputs the final positional command value X. A subtractor 101 subtracts a detected positional value xL from the positional command value X to calculate a positional deviation X-xL. The detected positional value xL is a positional detection signal obtained by directly detecting the position of the controlled object in the controlled system 112 using a linear scale or the like (not shown).
Meanwhile, the positional command value X is subjected to time differentiation in differentiators 104 and 109, with the resulting outputs being a velocity command value V and an acceleration command value A, respectively. The acceleration command value A is amplified in an amplifier 110 by a rate of acceleration torque conversion constant Ca to produce an acceleration torque command value τca for generating the acceleration in the object system 112. The velocity command value V and the acceleration torque command value τca are added to a velocity command and a torque command, respectively. The above-described processing sequence constitutes the well-known feed forward block of a positional control device, which is provided for reducing the ever extant positional deviation X−xL to zero.
An amplifier 102 performs linear amplification of the positional deviation X−xL at an amplification rate of positional loop gain Gp. The output from the amplifier 102 is added in an adder 103 to the velocity command value V and an initial friction compensation value Vsfc, producing the final velocity command Vc. A subtractor 105 subtracts motor velocity vm from the velocity command value Vc to calculate velocity deviation Vc-vm. The motor velocity vm is a value output from a differentiator 107 which calculates a time derivative of rotational angular position xm of a positional detector (not shown) connected to the servo motor, or, alternatively, is a value output from a velocity detector (not shown) connected to the servo motor. An amplifier 106 amplifies the velocity deviation Vc-vm by an amplification rate of velocity loop gain Gv.
The output from the amplifier 106 is added to the acceleration torque command value τca in an adder 108 to produce a torque command value τc. The torque command value τc is subjected to power amplification in a power amplifying section 111, producing generated torque τ for the object system 112. The power amplifying section 111 comprises a power amplifier and a servo motor, and outputs the generated torque τ by amplifying the torque command value τc. The rate of the amplification is denoted by torque conversion constant Ct. The generated torque τ is supplied to the object system 112 to drive the system. The symbol S in the differentiators of FIG. 5 denotes an operator of a Laplace transform indicating a differentiating operation.
One example operation of an initial friction compensation calculating section of a conventional positional control device is next described. Just before and after an object of control starts moving from a standstill state, namely, during initiation of a movement, friction force can be discontinuous. The initial friction compensation calculating section is provided for performing a compensation in such a situation. An inverse movement initiation detector 113 receives input of the velocity command value V, and outputs a pulse signal Fsf. Fsf is a binary signal indicating either ON or OFF, in which ON is output in a form of a pulse according to (1).Fsf:ON (during movement initiation where V<0V=0V>0 or V>0V=0V<0)  (1)
In other words, Fsf:ON is output in a pulse form during movement initiation only when the movement direction before stopping differs from the movement direction after initiation.
A friction compensation generator 114 receives input of the velocity command value V and Fsf. When Fsf:ON, the friction compensation generator 114 outputs an initial friction compensation value Vsfc in patterns according to equations (2) and (3). In equation (2), sgn(V) denotes a signum, where sgn(V)=+1 when V>0, sgn(V)=−1 when V<0, and sgn(V)=+0 when V=0.Vsfc(0)=sgn(V)·Vsfco  (2)
Here, Vsfc(0) denotes an initial value of Vsfc. Vsfco denotes a designated initial friction compensation amount preset in the friction compensation generator 114 (designated for Vsfco>0).Vsfc=Vsfc(0)·exp(−t/Td)  (3)
Here, t denotes time past after Fsf:ON is output. Td denotes a time constant preset in the friction compensation generator 114. Equation (3) expresses the time characteristic of the initial friction compensation value Vsfc, which is a gradual attenuation characteristic in this example.
FIG. 6 is a block diagram showing an equivalent representation of a configuration of the object system 112 from the point of view of positional movement. A value obtained by subtracting load torque τL from the generated torque τ serves as the acceleration/deceleration torque τma for the servo motor, which determines the rotational angular position xm of the servo motor (Im denotes the moment of inertia of the servo motor). The detected positional value xL indicates the position of the movable member such as a table. Because the servo motor and the movable member are connected by a coupling or the like, the overall rigidity K of the drive system governs the positional relationship between those two components. More specifically, load torque τL can be expressed by rigidity K times positional deviation xm−xL. The load torque τL is combined with disturbance torque τLd adding to the load. Disturbance torque τLd is denoted by a sum of external torque τex adding to the load, such as gravity, and frictional torque τf. The sum of the load torque τL and the disturbance torque τLd represents the acceleration/deceleration torque in the load direction τLa, which determines the detected positional value xL in the load direction (IL denotes the moment of inertia in the load direction).
The positional operation of the object system 112 can be explained as above. However, because of the characteristic of the frictional torque τf, the above explanation using FIG. 6 can be applied only for a case when the load is in motion, during which kinetic friction torque τkf can be used, namely, τf=τkf. For a case when the load is not in motion, use of static friction denoted by τsf, namely, τf=τsf, would result in expressing the required conditions for initiating a movement of the load as shown in equation (4).                                                                         τ                =                                                                            τ                      ⁢                                                                                           ⁢                      L                                        >                                                                                                                    τ                          ⁢                                                                                                           ⁢                          f                                                                                            -                                              τ                        ⁢                                                                                                   ⁢                        ex                                                                              =                                                            -                                                                                                τ                          ⁢                                                                                                           ⁢                          sf                                                                                                              -                                          τ                      ⁢                                                                                           ⁢                      ex                                                                                                                                              (                                  condition                  ⁢                                                                           ⁢                  for                  ⁢                                                                           ⁢                  generating                  ⁢                                                                           ⁢                  a                  ⁢                                                                           ⁢                  movement                  ⁢                                                                           ⁢                  in                  ⁢                                                                           ⁢                  direction                  ⁢                                                                           ⁢                  P                                )                                                                                        τ                =                                                                            τ                      ⁢                                                                                           ⁢                      L                                        >                                                                                                                    τ                          ⁢                                                                                                           ⁢                          f                                                                                            -                                              τ                        ⁢                                                                                                   ⁢                        ex                                                                              =                                                            -                                                                                                τ                          ⁢                                                                                                           ⁢                          sf                                                                                                              -                                          τ                      ⁢                                                                                           ⁢                      ex                                                                                                                                              (                                  condition                  ⁢                                                                           ⁢                  for                  ⁢                                                                           ⁢                  generating                  ⁢                                                                           ⁢                  a                  ⁢                                                                           ⁢                  movement                  ⁢                                                                           ⁢                  in                  ⁢                                                                           ⁢                  direction                  ⁢                                                                           ⁢                  N                                )                                                    }                            (        4        )            
According to the above, it would be determined that the load remains in a standstill state in the range defined by equation (5).(−|τsf|−τex)≦τ≦(|τsf|−τex)  (5)
One example operation of the above-described conventional positional control device shown in FIG. 5 is next explained referring to the timing chart of FIG. 7. In FIG. 7, the first to fourth rows from the top illustrate operations of the respective portions of the positional control device when no initial friction compensation value is added, while the fifth to seventh rows indicate operations of the conventional initial friction compensation calculating section on the same time axis. In this example, it is assumed that τex=0 and |τsf|>|τkf| hold true. Passage of time t is given by the horizontal axis. The top row shows the velocity command value V. The velocity command value V shows that, in this example, two cycles of a movement in direction P (V>0) and a stop are repeated, then two cycles of a movement in direction N (V<0) and a stop are repeated, and finally one additional movement in direction P (V>0) is performed.
The second row illustrates the generated torque τ of the servo motor on the same time axis. The third row shows the disturbance torque τLd in the load direction. As τex=0 holds true in this example, the disturbance torque τLd in the load direction can be expressed by the following equation (6) in accordance with FIG. 6.                                                                                                               -                                    ⁢                  τ                  ⁢                                                                           ⁢                  Ld                                =                                                      τ                    -                                          (                                                                        τ                          ⁢                                                                                                           ⁢                          La                                                +                                                  τ                          ⁢                                                                                                           ⁢                          ma                                                                    )                                                        =                                                            -                      τ                                        ⁢                                                                                   ⁢                    kf                    ⁢                                                                                   ⁢                                          (                                              when                        ⁢                                                                                                   ⁢                        the                        ⁢                                                                                                   ⁢                        axis                        ⁢                                                                                                   ⁢                        is                        ⁢                                                                                                   ⁢                        in                        ⁢                                                                                                   ⁢                        motion                                            )                                                                                                                                                                                    -                                    ⁢                  τ                  ⁢                                                                           ⁢                  Ld                                =                                                      τ                    ⁢                                                                                   ⁢                    L                                    =                                      τ                    ⁢                                                                                   ⁢                                          (                                              when                        ⁢                                                                                                   ⁢                        the                        ⁢                                                                                                   ⁢                        axis                        ⁢                                                                                                   ⁢                        is                        ⁢                                                                                                   ⁢                        at                        ⁢                                                                                                   ⁢                        a                        ⁢                                                                                                   ⁢                        standstill                                            )                                                                                                          }                            (        6        )            
It should be noted that, when in a standstill state, the disturbance torque τLd would be undefined according to equation (5).−|τsf|≦−τLd≦|τsf|  (7)
In FIG. 7, the disturbance torque τLd during a standstill is shown as being fixed at 0<−τLd<|τsf|.
The fourth row indicates the tracking deviation X−xL of the positional control device generated due to the influence of frictional torque during a movement initiation when no initial friction compensation value is added. At times t1 and t4 which are the instances at which a movement in direction P is initiated, tracking delay in direction P(denoted as +) is small because the generated torque τ during a standstill is similar to the condition τ>|τsf| (equation 4) for initiating a P-direction movement. On the other hand, at times t2 and t3 which are the instances at which a movement in direction N is initiated, tracking delay in direction N(denoted as −) is relatively large because the generated torque τ during a standstill is differs completely from the condition τ<−|τsf| (from equation 4) for initiating an N-direction movement. Further, at each of times t1-t4′, a second tracking deviation is generated in a direction opposite from the first tracking deviation direction. This second tracking deviation is caused by a difference in magnitude between static friction τsf and kinetic friction τkf. Accordingly, the second tracking deviation increases when the difference between static and kinetic frictions becomes larger.
The pulse signal Fsf, the signum sgn(V), and the initial friction compensation value Vsfc shown in the fifth to seventh rows of FIG. 7 describe the operation of the initial friction compensation calculating section of a conventional positional control device shown in FIG. 5. The pulse signal Fsf is turned ON only when a movement initiation in an inverse direction is executed. Accordingly, the initial friction compensation value Vsfc is generated at times t2 and t4, but not at times t1 and t3. Moreover, at times t2 and t4 when compensation values are generated, compensation is executed at the same absolute value even though the difference between the generated torque during standstill and the torque required by the movement initiation greatly differs between times t2 and t4.
As a result, with the conventional initial friction compensation, there is no improvement in the initial tracking deviation X−xL at times t1 and t3. Further, at times t2 and t4 when compensation operations are performed, setting of the designated initial friction compensation amount Vsfco so as to favorably reduce the tracking deviation at time t2 results in performing excessive compensation at time t4, producing a tracking deviation in an inverse direction. On the contrary, when Vsfco is set such that the tracking deviation at time t4 is favorably reduced, compensation is not sufficiently executed at time t2, failing to effectively reduce the tracking deviation. Moreover, there is no additional reduction in the second tracking deviation generated at each of times t1-t4.
As described above, the initial friction compensation function of a conventional positional control device performs a friction compensation operation in the direction of the initiated movement when the movement directions before and after an axis stop differ, and performs no friction compensation operation when the movement directions before and after an axis stop are the same. Accordingly, it is disadvantageous in that the instances at which the friction compensation operations are performed do not match the instances at which axis movement delays due to static friction actually occur. In addition, even when a friction compensation operation is performed at a proper point, compensation tends to be either excessive or insufficient because the initial friction compensation value is determined without taking into account the generated torque τ value of the servo motor during the standstill state. Another problem is that no measures are taken with respect to the tracking deviation generated due to a difference in magnitude between static friction and kinetic friction. As such, the initial friction compensation function of a conventional positional control device cannot satisfactorily accomplish the original object of initial friction compensation, which is to reduce a movement delay due to friction during a movement initiation, by generating a friction compensation value having appropriate direction and magnitude at an instance when the movement delay occurs, such that positional deviation X−xL at the initiation of movement is minimized.